home *** CD-ROM | disk | FTP | other *** search
/ isnet Internet / Isnet Internet CD.iso / prog / chat / 12 / 12.exe / SYSTEM / utils.mrc < prev    next >
Encoding:
Text File  |  2000-02-26  |  20.9 KB  |  738 lines

  1. ;%%%%%%%%%%%%%%%%%%%%%%%%
  2. ;script Miscellaneous ircN utilities
  3. ;version 7.20
  4. ;author Quietust/haro/numb
  5. ;email quietust@ircN.org
  6. ;url http://www.ircN.org
  7. ;%%%%%%%%%%%%%%%%%%%%%%%%
  8. on 1:DIALOG:ircN.scriptinfo:*:* {
  9.   if ($devent == init) {
  10.     did -ra $dname 5 ircN:
  11.     did -ra $dname 6 mIRC:
  12.     did -ra $dname 7 Uses:
  13.     did -ra $dname 8 OS:
  14.     did -ra $dname 9 Usage:
  15.     did -ra $dname 10 v $+ $strip($deltok(%iver,1,32))
  16.     did -ra $dname 11 $bits $+ bit v $+ $version
  17.     did -ra $dname 12 %uses times
  18.     did -ra $dname 13 Windows $os
  19.     did -ra $dname 14 $rsc2($duration($mpy(%pong,60)))
  20.     set %i 0
  21.     :start1
  22.     inc %i
  23.     if ($script(%i)) {
  24.       set %si.tmp2 $chr(59) $+ $str($chr(37),24)
  25.       if (($read -nl1 $script(%i) == %si.tmp2) && ($read -nl7 $script(%i) == %si.tmp2)) did -a $dname 3 $script(%i)
  26.       goto start1
  27.     }
  28.   }
  29.   elseif ($devent == sclick) {
  30.     if (($did == 3) && ($did(3,$did(3).sel) != $null)) {
  31.       set %si.tmp $read -nl2 $did(3,$did(3).sel)
  32.       set %si.i $getright($gettok(%si.tmp,1,32))
  33.       set %si.j $gettok(%si.tmp,2-,32)
  34.       if (%si.i != $null) {
  35.         did -ra $dname 5 $upper($left(%si.i,1)) $+ $mid(%si.i,2,$mid(%si.i,2,0)) $+ :
  36.         did -ra $dname 10 %si.j
  37.       }
  38.       set %si.tmp $read -nl3 $did(3,$did(3).sel)
  39.       set %si.i $getright($gettok(%si.tmp,1,32))
  40.       set %si.j $gettok(%si.tmp,2-,32)
  41.       if (%si.i != $null) {
  42.         did -ra $dname 6 $upper($left(%si.i,1)) $+ $mid(%si.i,2,$mid(%si.i,2,0)) $+ :
  43.         did -ra $dname 11 %si.j
  44.       }
  45.       set %si.tmp $read -nl4 $did(3,$did(3).sel)
  46.       set %si.i $getright($gettok(%si.tmp,1,32))
  47.       set %si.j $gettok(%si.tmp,2-,32)
  48.       if (%si.i != $null) {
  49.         did -ra $dname 7 $upper($left(%si.i,1)) $+ $mid(%si.i,2,$sub($len(%si.i),1)) $+ :
  50.         did -ra $dname 12 %si.j
  51.       }
  52.       set %si.tmp $read -nl5 $did(3,$did(3).sel)
  53.       set %si.i $getright($gettok(%si.tmp,1,32))
  54.       set %si.j $gettok(%si.tmp,2-,32)
  55.       if (%si.i != $null) {
  56.         did -ra $dname 8 $upper($left(%si.i,1)) $+ $mid(%si.i,2,$sub($len(%si.i),1)) $+ :
  57.         did -ra $dname 13 %si.j
  58.       }
  59.       set %si.tmp $read -nl6 $did(3,$did(3).sel)
  60.       set %si.i $getright($gettok(%si.tmp,1,32))
  61.       set %si.j $gettok(%si.tmp,2-,32)
  62.       if (%si.i != $null) {
  63.         did -ra $dname 9 $upper($left(%si.i,1)) $+ $mid(%si.i,2,$sub($len(%si.i),1)) $+ :
  64.         did -ra $dname 14 %si.j
  65.       }
  66.     }
  67.   }
  68. }
  69. on 1:SOCKOPEN:pop3 {
  70.   if ($sockerr > 0) { dialog -c ircN.pop3 | iecho Error connecting to POP3 server! ( $+ $sockerr $+ ) | return }
  71. }
  72. on 1:SOCKREAD:pop3 {
  73.   if ($sockerr > 0) { dialog -c ircN.pop3 | iecho Error occured while connected to POP3 server! ( $+ $sockerr $+ ) | return }
  74.   sockread %readmail.parms
  75.   if ($sockbr == 0) return
  76.   pop3.parse %readmail.parms
  77. }
  78. alias -l pop3.parse {
  79.   if (%pop3.step == 1) {
  80.     sockwrite -n pop3 USER $mail.name(%mailcur)
  81.     inc %pop3.step
  82.   }
  83.   elseif (%pop3.step == 2) {
  84.     if (%passcur) {
  85.       sockwrite -n pop3 PASS %passcur
  86.       unset %passcur
  87.       inc %pop3.step
  88.     }
  89.     else {
  90.       did -e ircN.pop3 17
  91.       did -ef ircN.pop3 18
  92.       did -et ircN.pop3 19
  93.     }
  94.   }
  95.   elseif ($1 == -ERR) {
  96.     if (no messages isin $2-) {
  97.       dialog -c ircN.pop3
  98.       iecho No new messages.
  99.     }
  100.     elseif (timeout isin $2-) {
  101.       iecho Your email session has timed out.
  102.     }
  103.     elseif (pass isin $2-) {
  104.       unset %passcur
  105.       sockwrite -n POP3 USER $mail.name(%mailcur)
  106.       dec %pop3.step
  107.     }
  108.     else {
  109.       dialog -c ircN.pop3
  110.       iecho An error has occured: $2-
  111.     }
  112.   }
  113.   elseif (%pop3.step == 3) {
  114.     sockwrite -n pop3 LIST
  115.     inc %pop3.step
  116.   }
  117.   elseif (%pop3.step == 4) {
  118.     if ($1 == +OK) { }
  119.     elseif ($1 == .) {
  120.       unset %pop3.step
  121.       if ($did(ircN.pop3,10).lines == 0) {
  122.         dialog -c ircN.pop3
  123.         iecho No new messages.
  124.       }
  125.       else {
  126.         did -h ircN.pop3 14
  127.         did -h ircN.pop3 15
  128.         did -h ircN.pop3 16
  129.         did -h ircN.pop3 17
  130.         did -h ircN.pop3 18
  131.         did -h ircN.pop3 19
  132.         did -e ircN.pop3 1
  133.         did -e ircN.pop3 2
  134.         did -e ircN.pop3 3
  135.         did -e ircN.pop3 4
  136.         did -e ircN.pop3 5
  137.         did -e ircN.pop3 6
  138.         did -e ircN.pop3 7
  139.         did -e ircN.pop3 8
  140.         did -e ircN.pop3 9
  141.         did -e ircN.pop3 10
  142.         did -e ircN.pop3 11
  143.         did -e ircN.pop3 12
  144.         did -e ircN.pop3 20
  145.         tsound gotmsg
  146.       }
  147.     }
  148.     else did -a ircN.pop3 10 Message $1 ( $+ $2 bytes)
  149.   }
  150.   elseif ($1- == .) {
  151.     did -e ircN.pop3 5
  152.     did -e ircN.pop3 6
  153.     did -e ircN.pop3 7
  154.     did -e ircN.pop3 8
  155.     did -e ircN.pop3 9
  156.     did -e ircN.pop3 10
  157.     unset %pop3.step
  158.   }
  159.   elseif (%pop3.step == 5) write %temp.em $1-
  160.   elseif (%pop3.step == 6) {
  161.     if ($1 == Date:) did -a ircN.pop3 5 $2-
  162.     elseif (($1 == From:) && (@ isin $2-)) {
  163.       did -ra ircN.pop3 6 $2-
  164.       if (%reply == $null) set %reply $remove($wildtok($1-,<*>,1,32),<,>)
  165.     }
  166.     elseif ($1 == Subject:) {
  167.       did -ra ircN.pop3 7 $2-
  168.       set %subj Re: $remove($2-,Re:)
  169.     }
  170.     elseif ($1 == Reply-To:) {
  171.       did -ra ircN.pop3 8 $2-
  172.       if (%reply == $null) set %reply $remove($wildtok($1-,<*>,1,32),<,>)
  173.     }
  174.     elseif ($1 == $null) inc %pop3.step
  175.   }
  176.   elseif (%pop3.step == 7) {
  177.     if ($left($1,1) == .) did -a ircN.pop3 9 $getright($1-) $+ $crlf
  178.     else did -a ircN.pop3 9 $1- $+ $crlf
  179.   }
  180.   elseif (%pop3.step == 8) {
  181.     did -e ircN.pop3 5
  182.     did -e ircN.pop3 6
  183.     did -e ircN.pop3 7
  184.     did -e ircN.pop3 8
  185.     did -e ircN.pop3 9
  186.     did -e ircN.pop3 10
  187.     unset %pop3.step
  188.   }
  189. }
  190. on 1:SOCKCLOSE:pop3 {
  191.   if ($dialog(ircN.pop3)) dialog -c ircN.pop3
  192.   tsound disconnect
  193. }
  194. on 1:DIALOG:ircN.pop3:*:* {
  195.   if ($devent == init) {
  196.     did -a $dname 15 %maildef
  197.     set %i.pop3 0
  198.     :init
  199.     inc %i.pop3
  200.     if ($gettok(%mailaccounts,%i.pop3,44)) {
  201.       if ($gettok(%mailaccounts,%i.pop3,44) != %maildef) did -a $dname 15 $gettok(%mailaccounts,%i.pop3,44)
  202.       goto init
  203.     }
  204.     did -fc $dname 15 1
  205.     did -t $dname 16
  206.   }
  207.   elseif ($devent == sclick) {
  208.     if ($did == 10) {
  209.       did -br $dname 5
  210.       did -br $dname 6
  211.       did -br $dname 7
  212.       did -br $dname 8
  213.       did -br $dname 9
  214.       did -b $dname 10
  215.       unset %subj %reply
  216.       sockwrite -n pop3 RETR $gettok($did(10,$did(10).sel).text,2,32)
  217.       set %pop3.step 6
  218.       tsound seemsg
  219.     }
  220.     elseif ($did == 11) {
  221.       did -br $dname 5
  222.       did -br $dname 6
  223.       did -br $dname 7
  224.       did -br $dname 8
  225.       did -br $dname 9
  226.       did -b $dname 10
  227.       if ($did($dname,10).sel) {
  228.         set %pop3.step 8
  229.         sockwrite -n pop3 DELE $gettok($did(10,$did(10).sel).text,2,32)
  230.         did -d $dname 10 $did(10).sel
  231.         tsound delmsg
  232.       }
  233.     }
  234.     elseif ($did == 12) sendmail %reply %subj
  235.     elseif ($did == 13) {
  236.       if ($sock(pop3)) sockwrite -n pop3 QUIT
  237.       dialog -x $dname
  238.       unset %mailcur %passcur %reply %subj
  239.     }
  240.     elseif ($did == 16) {
  241.       if ($readini -n ircndata.ini $did(15) mailip) {
  242.         set %mailcur $did(15)
  243.         if ($mail.pass(%mailcur)) set %passcur $mail.pass(%mailcur)
  244.         set %pop3.step 1
  245.         sockopen pop3 $mail.ip($did(15)) 110
  246.         did -b $dname 14
  247.         did -b $dname 15
  248.         did -b $dname 16
  249.       }
  250.       else did -ra $dname 15 Invalid!
  251.     }
  252.     elseif ($did == 19) {
  253.       sockwrite -n pop3 PASS $did(18)
  254.       inc %pop3.step
  255.       did -b $dname 17
  256.       did -b $dname 18
  257.       did -b $dname 19
  258.     }
  259.     elseif ($did == 20) {
  260.       did -b $dname 5
  261.       did -b $dname 6
  262.       did -b $dname 7
  263.       did -b $dname 8
  264.       did -b $dname 9
  265.       did -b $dname 10
  266.       set %tmp.pop3 0
  267.       :start
  268.       inc %tmp.pop3
  269.       set %i.pop3 mail- $+ %tmp.pop3 $+ .txt
  270.       if ($exists($ed(%i.pop3))) goto start
  271.       set %temp.em $ed(%i.pop3)
  272.       write -c $ed(%i.pop3)
  273.       unset %reply %subj
  274.       sockwrite -n pop3 RETR $gettok($did(10,$did(10).sel).text,2,32)
  275.       set %pop3.step 5
  276.     }
  277.   }
  278. }
  279. on 1:SOCKOPEN:smtp {
  280.   if ($sockerr > 0) { dialog -c ircN.smtp | iecho Error connecting to SMTP server! ( $+ $sockerr $+ ) | return }
  281.   set %mst $ticks
  282.   sockwrite -n smtp HELO $ip
  283.   set %smtp.step 0
  284. }
  285. on 1:SOCKREAD:smtp {
  286.   if ($sockerr > 0) { iecho Error occured while connected to SMTP server! ( $+ $sockerr $+ )  | return }
  287.   sockread %sendmail.parms
  288.   if ($sockbr == 0) return
  289.   smtp.parse %sendmail.parms
  290. }
  291. alias -l smtp.parse {
  292.   if ($1 == 220) {
  293.     sockwrite -n smtp mail from: %remail
  294.     inc %smtp.step
  295.   }
  296.   elseif ($1 == 221) iecho Mail to $hc($did(ircN.smtp,3)) sent successfully in $hc($rrpt($sub($ticks,%mst))) secs.
  297.   elseif ($1 == 250) {
  298.     if (%smtp.step == 1) {
  299.       sockwrite -n smtp rcpt to: $did(ircN.smtp,3)
  300.       set %messageto $did(ircN.smtp,3)
  301.       inc %smtp.step
  302.     }
  303.     elseif (%smtp.step == 2) {
  304.       sockwrite -n smtp data
  305.       inc %smtp.step
  306.     }
  307.     elseif (%smtp.step == 4) sockwrite -n smtp quit
  308.   }
  309.   elseif ($1 == 354) {
  310.     sockwrite -n smtp X-Mailer: $strip(%ver) for mIRC
  311.     sockwrite -n smtp Date: $getdate $gettz
  312.     sockwrite -n smtp To: %messageto
  313.     sockwrite -n smtp Subject: $did(ircN.smtp,4)
  314.     sockwrite -n smtp Reply-To: %remail
  315.     sockwrite -n smtp From: " $+ %myn $+ " < $+ %remail $+ >
  316.     sockwrite -n smtp Content-Type: text/plain; charset="us-ascii"
  317.     set %tmp.sendmail 0
  318.     :send
  319.     inc %tmp.sendmail
  320.     if (%tmp.sendmail <= $did(ircN.smtp,5).lines) {
  321.       if ($left($did(ircN.smtp,5,%tmp.sendmail),1) == .) sockwrite -n smtp . $+ $did(ircN.smtp,5,%tmp.sendmail)
  322.       elseif ($did(ircN.smtp,5,%tmp.sendmail)) sockwrite -n smtp $did(ircN.smtp,5,%tmp.sendmail)
  323.       else sockwrite smtp $crlf
  324.       goto send
  325.     }
  326.     inc %smtp.step
  327.     sockwrite -n smtp .
  328.   }
  329. }
  330. on 1:SOCKCLOSE:smtp {
  331.   dialog -c ircN.smtp
  332.   unset %mst %rcpt %subj %messageto
  333. }
  334. on 1:DIALOG:ircN.smtp:*:* {
  335.   if ($devent == init) {
  336.     did -ra $dname 3 %rcpt
  337.     if (%subj) did -ra $dname 4 %subj
  338.     if ($exists(%signature)) {
  339.       did -a $dname 5 $crlf $+ -- $+ $crlf
  340.       set %tmp.sendmail 0
  341.       :start
  342.       inc %tmp.sendmail
  343.       if (%tmp.sendmail <= $lines(%signature)) {
  344.         did -a $dname 5 $read -nl [ $+ [ %tmp.sendmail ] ] %signature $+ $crlf
  345.         goto start
  346.       }
  347.     }
  348.   }
  349.   elseif ($devent == sclick) {
  350.     if ($did == 6) {
  351.       did -b $dname 3
  352.       did -b $dname 4
  353.       did -b $dname 5
  354.       did -b $dname 6
  355.       sockopen smtp %smailip 25
  356.     }
  357.     elseif ($did == 7) {
  358.       if ($sock(smtp)) {
  359.         did -e $dname 3
  360.         did -e $dname 4
  361.         did -e $dname 5
  362.         did -e $dname 6
  363.         sockclose smtp
  364.         unset %mst %messageto
  365.         halt
  366.       }
  367.       else dialog -c $dname
  368.     }
  369.   }
  370. }
  371. on 1:DIALOG:ircN.viewfile:init:* {
  372.   if ($exists(%viewfile) == $null) {
  373.     dialog -c $dname
  374.     return
  375.   }
  376.   set %tmp.viewfile 0
  377.   :start
  378.   inc %tmp.viewfile
  379.   if (%tmp.viewfile <= $lines(%viewfile)) {
  380.     did -a $dname 1 $read -nl [ $+ [ %tmp.viewfile ] ] %viewfile $+ $crlf
  381.     goto start
  382.   }
  383.   did -f $dname 1
  384. }
  385. alias servers.convert {
  386.   server -s
  387.   var %a, %b, %c, %z
  388.   write -c server.ini
  389.   writeini -n server.ini Networks num 0
  390.   set %a 1
  391.   while ($server(%a)) {
  392.     set %z $server(%a).group
  393.     if (%z == $null) set %z unassigned
  394.     set %b $readini -n server.ini Networks num
  395.     if ($readini -n server.ini Networks $addtok(n,%b,0) != %z) {
  396.       inc %b
  397.       writeini -n server.ini Networks num %b
  398.       writeini -n server.ini Networks $addtok(n,%b,0) %z
  399.       writeini -n server.ini %z num 0
  400.     }
  401.     set %c $readini -n server.ini %z num
  402.     inc %c
  403.     writeini -n server.ini %z num %c
  404.     writeini -n server.ini %z $addtok(n,%c,0) $server(%a)
  405.     inc %a
  406.   }
  407. }
  408. on 1:DIALOG:ircN.servers:*:* {
  409.   if ($devent == init) {
  410.     if ($isfile(server.ini) == $false) {
  411.       iecho A compiled servers list was not found. ircN will now generate one.  This may take several minutes...
  412.       servers.convert
  413.     }
  414.     did -b $dname 9
  415.     did -b $dname 20
  416.     did -r $dname 3
  417.     if ($server) {
  418.       did -ra $dname 11 Net: %irc.network
  419.       did -ra $dname 12 Serv: $server
  420.       did -ra $dname 13 Port: $port
  421.       did -ra $dname 14 Lag: %lag
  422.     }
  423.     else {
  424.       did -ra $dname 11 Net: N/A
  425.       did -ra $dname 12 Serv: NOT CONNECTED
  426.       did -ra $dname 13 Port: N/A
  427.       did -ra $dname 14 Lag: N/A
  428.     }
  429.     did -ra $dname 15 Total: $server(0) servers
  430.     did -r $dname 3
  431.     did -r $dname 8
  432.     did -r $dname 17
  433.     set %i 0
  434.     :start
  435.     inc %i
  436.     if (%i <= $readini server.ini Networks num) {
  437.       set %tmp $readini server.ini Networks n [ $+ [ %i ] ]
  438.       did -a $dname 3 %tmp
  439.       set %j 0
  440.       :start2
  441.       inc %j
  442.       if (%j <= $readini server.ini %tmp num) {
  443.         did -a $dname 8 $readini server.ini %tmp n [ $+ [ %j ] ]
  444.         goto start2
  445.       }
  446.       goto start
  447.     }
  448.     set %i.servers 0
  449.     :loop
  450.     inc %i.servers
  451.     if $did(3,%i.servers).text {
  452.       if ($did(3,%i.servers).text == %irc.network) did -c $dname 3 %i.servers
  453.       else goto loop
  454.     }
  455.     if ($did(3) == $null) return
  456.     did -rf $dname 8
  457.     did -r $dname 17
  458.     set %i 0
  459.     :start3
  460.     inc %i
  461.     if (%i <= $readini -n server.ini $did(3) num) {
  462.       did -a $dname 8 $readini -n server.ini $did(3) n [ $+ [ %i ] ]
  463.       goto start3
  464.     }
  465.     did -f $dname 3
  466.   }
  467.   elseif ($devent == sclick) {
  468.     if ($did == 3) {
  469.       if ($did(3) == $null) return
  470.       did -rf $dname 8
  471.       did -r $dname 17
  472.       set %i 0
  473.       :start4
  474.       inc %i
  475.       if (%i <= $readini -n server.ini $did(3) num) {
  476.         did -a $dname 8 $readini -n server.ini $did(3) n [ $+ [ %i ] ]
  477.         goto start4
  478.       }
  479.       did -f $dname 3
  480.     }
  481.     elseif ($did == 6) {
  482.       set %servers.links on
  483.       ml
  484.     }
  485.     elseif ($did == 8) {
  486.       did -e $dname 9
  487.       did -e $dname 20
  488.       did -r $dname 5
  489.       did -ra $dname 17 $server($did(8,$did(8).sel)).desc
  490.       set %temp.serv $server($did(8,$did(8).sel)).port
  491.       set %i 0
  492.       :start5
  493.       inc %i
  494.       if ($gettok(%temp.serv,%i,44)) { 
  495.         did -a $dname 5 $gettok(%temp.serv,%i,44)
  496.         goto start5
  497.       }
  498.       did -c $dname 5 1
  499.     }
  500.     elseif ($did == 9) {
  501.       if ($did(8,$did(8).sel)) server $did(8,$did(8).sel) $iif($did(5),$did(5))
  502.     }
  503.     elseif ($did == 19) {
  504.       did -r $dname 3
  505.       did -r $dname 8
  506.       did -r $dname 17
  507.       set %i 0
  508.       :start6
  509.       inc %i
  510.       if (%i <= $readini server.ini Networks num) {
  511.         set %tmp $readini server.ini Networks n [ $+ [ %i ] ]
  512.         did -a $dname 3 %tmp
  513.         set %j 0
  514.         :start7
  515.         inc %j
  516.         if (%j <= $readini server.ini %tmp num) {
  517.           did -a $dname 8 $readini server.ini %tmp n [ $+ [ %j ] ]
  518.           goto start7
  519.         }
  520.         goto start6
  521.       }
  522.       set %i.servers 0
  523.       :loop
  524.       inc %i.servers
  525.       if $did(3,%i.servers).text {
  526.         if ($did(3,%i.servers).text == %irc.network) did -c $dname 3 %i.servers
  527.         else goto loop
  528.       }
  529.       if ($did(3) == $null) return
  530.       did -rf $dname 8
  531.       did -r $dname 17
  532.       set %i 0
  533.       :start8
  534.       inc %i
  535.       if (%i <= $readini -n server.ini $did(3) num) {
  536.         did -a $dname 8 $readini -n server.ini $did(3) n [ $+ [ %i ] ]
  537.         goto start8
  538.       }
  539.       did -f $dname 3
  540.     }
  541.     elseif ($did == 20) {
  542.       if ($did(8,$did(8).sel)) irc2 $did(8,$did(8).sel) $iif($did(5),$did(5))
  543.     }
  544.   }
  545. }
  546. raw 365:* {
  547.   if (%servers.links == on) {
  548.     unset %servers.links
  549.     set %i 0
  550.     :start
  551.     inc %i
  552.     set %tmp $read -nl [ $+ [ %i ] ] $nd(svr)
  553.     if (%tmp != $null) {
  554.       if (* isin %tmp) goto start
  555.       elseif ($server(%tmp) == $null) .server -a %tmp -g %irc.network -d %irc.network $+ : %tmp
  556.       goto start
  557.     }
  558.     iecho Server list updated. Type /servers.convert to refresh your server list...
  559.   }
  560. }
  561. on 1:CONNECT {
  562.   if ($dialog(ircN.servers)) { 
  563.     did -ra ircN.servers 11 Net: %irc.network
  564.     did -ra ircN.servers 12 Serv: $server
  565.     did -ra ircN.servers 13 Port: $port
  566.     did -ra ircN.servers 14 Lag: %lag
  567.   }
  568.   if ($dialog(ircN.autojoin)) did -ra ircN.autojoin 14 %irc.network
  569. }
  570. on 1:DISCONNECT {
  571.   set %links $ctime
  572.   if ($dialog(ircN.servers)) {
  573.     did -ra ircN.servers 11 Net: N/A
  574.     did -ra ircN.servers 12 Serv: Not connected
  575.     did -ra ircN.servers 13 Port: N/A
  576.     did -ra ircN.servers 14 Lag: N/A
  577.   }
  578.   if ($dialog(ircN.autojoin)) {
  579.     did -r ircN.autojoin 6
  580.     did -r ircN.autojoin 14
  581.   }
  582. }
  583. on 1:DIALOG:ircN.autojoin:*:* {
  584.   if ($devent == init) {
  585.     did -ra $dname 10 Channels: $chan(0)
  586.     did -ra $dname 13 Autojoins: $numtok(%autojoin. [ $+ [ %irc.network ] ] ,44)
  587.     did -ra $dname 14 On: %irc.network
  588.     set %i.autojoin 0 
  589.     :start 
  590.     inc %i.autojoin
  591.     if ($chan(%i.autojoin)) {
  592.       did -a $dname 6 $chan(%i.autojoin)
  593.       goto start
  594.     }
  595.     set %i.autojoin 0
  596.     :start2
  597.     inc %i.autojoin
  598.     if ($gettok(%autojoin. [ $+ [ %irc.network ] ] ,%i.autojoin,44)) {
  599.       did -a $dname 2 $gettok(%autojoin. [ $+ [ %irc.network ] ] ,%i.autojoin,44)
  600.       goto start2
  601.     }
  602.   }
  603.   elseif ($devent == sclick) {
  604.     if ($did == 3) {
  605.       if ($did(2).sel == $null) return
  606.       rj $did(2,$did(2).sel)
  607.       did -d $dname 2 $did(2).sel
  608.       did -ra $dname 13 Autojoins: $numtok(%autojoin. [ $+ [ %irc.network ] ] ,44)
  609.     }
  610.     elseif ($did == 4) {
  611.       did -r $dname 2
  612.       unset %autojoin. [ $+ [ %irc.network ] ]
  613.       did -ra $dname 13 Autojoins: 0
  614.     }
  615.     elseif ($did == 7) {
  616.       if ($did(6,$did(6).sel) == $null) return
  617.       if ($findtok(%autojoin. [ $+ [ %irc.network ] ] ,$did(6,$did(6).sel),1,44)) return
  618.       aj $did(6,$did(6).sel)
  619.       did -a $dname 2 $did(6,$did(6).sel)
  620.       did -ra $dname 13 Autojoins: $numtok(%autojoin. [ $+ [ %irc.network ] ] ,44)
  621.     }
  622.     elseif ($did == 8) {
  623.       did -r $dname 6
  624.       set %i.autojoin 0
  625.       :start3
  626.       inc %i.autojoin
  627.       if ($chan(%i.autojoin)) {
  628.         did -a $dname 6 $chan(%i.autojoin)
  629.         goto start3
  630.       }
  631.     }
  632.     elseif ($did == 12) join %autojoin. [ $+ [ %irc.network ] ]
  633.   }
  634. }
  635. on 1:JOIN:# { 
  636.   if (($nick == $me) && ($dialog(ircN.autojoin))) {
  637.     did -a ircN.autojoin 6 $chan
  638.     did -ra ircN.autojoin 10 Channels: $chan(0)
  639.   }
  640. }
  641. on 1:PART:# { 
  642.   if (($nick == $me) && ($dialog(ircN.autojoin))) {
  643.     set %i.autojoin 0
  644.     :start
  645.     inc %i.autojoin
  646.     if ($did(ircN.autojoin,6).sel != $null) { 
  647.       if ($did(ircN.autojoin,6,$did(ircN.autojoin,6).sel) == $chan) did -d ircN.autojoin 6 $did(ircN.autojoin,6).sel
  648.       else goto start
  649.     }
  650.     did -ra $dname 10 Channels: $sub($chan(0),1)
  651.   }
  652. }
  653. alias colors {
  654.   window -alk +b @ColoráList 550 200 22 242 @ColorList FixedSys
  655.   clear @ColoráList
  656.   aline @ColoráList 0,0__
  657.   aline @ColoráList 1,1__
  658.   aline @ColoráList 2,2__
  659.   aline @ColoráList 3,3__
  660.   aline @ColoráList 4,4__
  661.   aline @ColoráList 5,5__
  662.   aline @ColoráList 6,6__
  663.   aline @ColoráList 7,7__
  664.   aline @ColoráList 8,8__
  665.   aline @ColoráList 9,9__
  666.   aline @ColoráList 10,10__
  667.   aline @ColoráList 11,11__
  668.   aline @ColoráList 12,12__
  669.   aline @ColoráList 13,13__
  670.   aline @ColoráList 14,14__
  671.   aline @ColoráList 15,15__
  672.   window -alk @ColoráTypes 386 200 164 242 @ColorTypes FixedSys
  673.   clear @ColoráTypes
  674.   aline @ColoráTypes ircN Colours
  675.   aline %c2 @ColoráTypes Highlight
  676.   aline %c3 @ColoráTypes Secondary
  677.   aline %c4 @ColoráTypes Alternate
  678.   aline @ColoráTypes  
  679.   aline @ColoráTypes NickList Colours
  680.   aline %cn1 @ColoráTypes Shitlist/Autokick
  681.   aline %cn2 @ColoráTypes User
  682.   aline %cn3 @ColoráTypes Protected
  683.   aline %cn4 @ColoráTypes Voice
  684.   aline %cn5 @ColoráTypes Op
  685.   aline %cn6 @ColoráTypes Bot
  686.   aline %cn7 @ColoráTypes Master
  687.   aline %cn8 @ColoráTypes Owner
  688. }
  689. menu @ColorList {
  690.   dclick chcolor $sline(@ColoráTypes,1).ln $sline(@ColoráList,1).ln
  691. }
  692. menu @ColorTypes {
  693.   exit { window -c @ColoráList | window -c @ColoráTypes }
  694. }
  695. alias -l chcolor {
  696.   sline -r @ColoráList
  697.   sline -r @ColoráTypes
  698.   if ($2 == $null) {
  699.     window -a +f @Warning! 386 175 169 25
  700.     aline @Warning! No color selected!
  701.     .timer 1 3 window -c @Warning!
  702.     return
  703.   }
  704.   else set %i $cnum($sub($2,1))
  705.   if ($1 == 2) set %c2 %i
  706.   elseif ($1 == 3) set %c3 %i
  707.   elseif ($1 == 4) set %c4 %i
  708.   elseif ($1 == 7) set %cn1 %i
  709.   elseif ($1 == 8) set %cn2 %i
  710.   elseif ($1 == 9) set %cn3 %i
  711.   elseif ($1 == 10) set %cn4 %i
  712.   elseif ($1 == 11) set %cn5 %i
  713.   elseif ($1 == 12) set %cn6 %i
  714.   elseif ($1 == 13) set %cn7 %i
  715.   elseif ($1 == 14) set %cn8 %i
  716.   else {
  717.     window -a +f @Warning! 386 175 169 25
  718.     aline @Warning! No color selected!
  719.     .timer 1 3 window -c @Warning!
  720.     return
  721.   }
  722.   cline %i @ColoráTypes $1
  723.   ch
  724. }
  725. on 1:CLOSE:@Colorá* {
  726.   window -c @ColoráList
  727.   window -c @ColoráTypes
  728. }
  729. on 1:DIALOG:ircN.dccstatus:*:* {
  730.   if ($devent == init) {
  731.     dstat -u
  732.     .timerdstat 0 3 dstat
  733.   }
  734.   elseif ($devent == sclick) {
  735.     if (($did == 3) || ($did == 13)) dstat
  736.   }
  737. }
  738.